// 引入库
const Koa = require('koa')
const serve = require('koa-static')
const { historyApiFallback } = require('koa2-connect-history-api-fallback')
const proxy = require('koa2-proxy-middleware')

// 创建服务器
const app = new Koa()
const port = 9528

// 处理 history 路由产生的刷新空白问题
app.use(historyApiFallback())

// 处理api请求
app.use(proxy({
  targets: {
    '/prod-api/(.*)': {
      target: 'http://localhost:1337',
      changeOrigin: true,
      // 如果前端考虑安全或其他原因, 故意
      // 用跟后台不一样的地址发送api 可以在这
      // 做路径重写
      pathRewrite: {
        '/prod-api': ''
      }
    }
  }
}))

// 提供静态服务
app.use(serve(__dirname + '/dist'))

// 开启服务器
app.listen(port, () => {
  console.log('服务器已经开启')
  console.log(`http://localhost:${port}`)
})
